//3682:整数奇偶排序
/*
描述
输入10个整数，彼此以空格分隔
重新排序以后输出(也按空格分隔)，要求:
1.先输出其中的奇数,并按从大到小排列；
2.然后输出其中的偶数,并按从小到大排列。
输入
任意排序的10个整数（0～100），彼此以空格分隔
输出
按照要求排序后输出，由空格分隔
*/

#include <iostream>
#include<stdio.h>

using namespace std;

int main()
{
int a[100000],b[100000],c[100000],i,j,n=10,t,n1=0,n2=0,k1=0,k2=0;
for(i=1;i<=10;i++)
scanf("%d",&c[i]);
for(i=1;i<=n;i++)
{
if(c[i]%2!=0)
a[++k1]=c[i],n1++;
if(c[i]%2==0)
b[++k2]=c[i],n2++;
}
for(i=1;i<=n1-1;i++)
for(j=1;j<=n1-i;j++)
if(a[j]<a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
for(i=1;i<=n1;i++)
printf("%d ",a[i]);
for(i=1;i<=n2-1;i++)
for(j=1;j<=n2-i;j++)
if(b[j]>b[j+1])
{
t=b[j];
b[j]=b[j+1];
b[j+1]=t;
}
for(i=1;i<=n2;i++)
printf("%d ",b[i]);
printf("\n");
return 0;
}

//Accepted
